package leetcode.recursive;
//263. 丑数
public class IsUgly {

    public static void main(String[] args) {

        IsUgly isUgly = new IsUgly();
        System.out.println(isUgly.isUgly2(6));
    }
    //递归
    public boolean isUgly(int n) {
        if (n==1){
            return true;
        }
        if (n==0){
            return false;
        }
        if (n%2==0){
            return isUgly(n/2);
        }else if (n%3==0){
           return isUgly(n/3);
        }else if (n%5==0){
           return isUgly(n/5);
        }
        return false;
    }

    //非递归
    public boolean isUgly2(int n) {
        while (true){
            if (n%2==0){
                n /=2;
            }else if (n%3==0){
                n /=3;
            }else if (n%5==0){
                n /=5;
            }else {
                break;
            }
        }
        return n==1;
    }
}
